package cn.topevery.garden.entity.po;

import cn.topevery.garden.framework.base.BaseEntity;
import hw.topevery.framework.annotation.DbTable;
import hw.topevery.framework.annotation.DbTableField;
import hw.topevery.framework.enums.DbTypeEnum;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @Author LiBo
 * @Date 2022/11/2 15:19
 */
@Data
@DbTable(tableName = "t_proj_basic_info")
public class ProjBasicInfo extends BaseEntity {

    /**
     * 项目ID
     */
    @DbTableField(columnName = "c_proj_id", dbType = DbTypeEnum.VARCHAR)
    public String projId;

    /**
     * 项目名称
     */
    @DbTableField(columnName = "c_proj_name", dbType = DbTypeEnum.VARCHAR)
    public String projName;

    /**
     * 建设单位ID
     */
    @DbTableField(columnName = "c_build_dept_id", dbType = DbTypeEnum.VARCHAR)
    public String buildDeptId;

    /**
     * 建设单位名称
     */
    @DbTableField(columnName = "c_build_dept_name", dbType = DbTypeEnum.VARCHAR)
    public String buildDeptName;

    /**
     * 项目类别
     */
    @DbTableField(columnName = "c_proj_category", dbType = DbTypeEnum.VARCHAR)
    public String projCategory;

    /**
     * 项目类型（城市裸露空地整治、城市生态修复、城市绿道、立体绿化、滨水绿带、海绵型绿地）
     */
    @DbTableField(columnName = "c_proj_type", dbType = DbTypeEnum.VARCHAR)
    public String projType;

    /**
     * 项目属性（综合公园、专类公园、社区公园、游园、城市广场、道路绿化、防护绿地、区域绿地）
     */
    @DbTableField(columnName = "c_proj_prop", dbType = DbTypeEnum.VARCHAR)
    public String projProp;

    /**
     * 是否市对区考核任务（1：是；0：否；）
     */
    @DbTableField(columnName = "c_is_assessment_task", dbType = DbTypeEnum.INTEGER)
    public Integer isAssessmentTask;

    /**
     * 是否年度计划建设项目（1：是；0：否；）
     */
    @DbTableField(columnName = "c_is_annual_plan", dbType = DbTypeEnum.INTEGER)
    public Integer isAnnualPlan;

    /**
     * 用地性质（居住用地、公共管理与公共服务用地、商业服务业设施用地、工业用地、物流仓储用地、交通设施用地、公用设施用地、绿地和广场用地）
     */
    @DbTableField(columnName = "c_land_nature", dbType = DbTypeEnum.VARCHAR)
    public String landNature;

    /**
     * 资金来源 (1 市财政资金 2 区财政资金 3 国土基金）
     */
    @DbTableField(columnName = "c_fund_source_code", dbType = DbTypeEnum.VARCHAR)
    public String fundSourceCode;

    /**
     * 建设性质（1 新开工 2续建 3 改造）
     */
    @DbTableField(columnName = "c_build_nature_code", dbType = DbTypeEnum.VARCHAR)
    public String buildNatureCode;

    /**
     * 建设阶段 （1 立项 2 项目概算 3 招投标/上会批复 4 合同签订 5 合同实施 6 结算）
     */
    @DbTableField(columnName = "c_nature_stage_code", dbType = DbTypeEnum.VARCHAR)
    public String natureStageCode;

    /**
     * 开工日期
     */
    @DbTableField(columnName = "c_proj_start_date", dbType = DbTypeEnum.DATE)
    public LocalDate projStartDate;

    /**
     * 竣工日期
     */
    @DbTableField(columnName = "c_proj_complete_date", dbType = DbTypeEnum.DATE)
    public LocalDate projCompleteDate;

    /**
     * 估算总投资（万元）
     */
    @DbTableField(columnName = "c_estimate_total_money", dbType = DbTypeEnum.DECIMAL)
    public BigDecimal estimateTotalMoney;

    /**
     * 项目年份
     */
    @DbTableField(columnName = "c_year", dbType = DbTypeEnum.VARCHAR)
    public String year;

    /**
     * 项目状态（1 进行中 2 历史项目  3 暂缓）
     */
    @DbTableField(columnName = "c_proj_state", dbType = DbTypeEnum.VARCHAR)
    public String projState;

    /**
     * 业主/代理业主单位名称
     */
    @DbTableField(columnName = "c_employ_name", dbType = DbTypeEnum.VARCHAR)
    public String employName;

    /**
     * 现场代表ID以英文,分割
     */
    @DbTableField(columnName = "c_represent_ids", dbType = DbTypeEnum.VARCHAR)
    public String representIds;

    /**
     * 现场代表名称以英文,分割
     */
    @DbTableField(columnName = "c_represent_names", dbType = DbTypeEnum.VARCHAR)
    public String representNames;

    /**
     * 建设类型
     */
    @DbTableField(columnName = "c_bulid_type", dbType = DbTypeEnum.VARCHAR)
    public String bulidType;

    /**
     * 面积（㎡）
     */
    @DbTableField(columnName = "c_proj_area", dbType = DbTypeEnum.VARCHAR)
    public String projArea;

    /**
     * 实际面积（㎡）
     */
    @DbTableField(columnName = "c_proj_actual_area", dbType = DbTypeEnum.VARCHAR)
    public String projActualArea;

    /**
     * 建设地址
     */
    @DbTableField(columnName = "c_proj_address", dbType = DbTypeEnum.VARCHAR)
    public String projAddress;

    /**
     * 项目X坐标
     */
    @DbTableField(columnName = "c_geo_x", dbType = DbTypeEnum.DOUBLE)
    public Double geoX;

    /**
     * 项目Y坐标
     */
    @DbTableField(columnName = "c_geo_y", dbType = DbTypeEnum.DOUBLE)
    public Double geoY;

    /**
     * 基本建设内容
     */
    @DbTableField(columnName = "c_bulid_content", dbType = DbTypeEnum.VARCHAR)
    public String bulidContent;

    /**
     * 备注
     */
    @DbTableField(columnName = "c_remark", dbType = DbTypeEnum.VARCHAR)
    public String remark;

    /**
     * 排序号
     */
    @DbTableField(columnName = "c_order_num", dbType = DbTypeEnum.INTEGER)
    public Integer orderNum;

    /**
     * 经办人
     */
    @DbTableField(columnName = "c_operator", dbType = DbTypeEnum.VARCHAR)
    public String operator;

    /**
     * 街道
     */
    @DbTableField(columnName = "c_street", dbType = DbTypeEnum.VARCHAR)
    public String street;
}
